home *** CD-ROM | disk | FTP | other *** search
/ Acorn RISC PD-CD 1 / Acorn RISC PD-CD 1.iso / sillies / _sherwood / _jargon < prev    next >
Text File  |  1993-04-06  |  5KB  |  101 lines

  1. Finally, here is a great story about one of the classic computer hacks.
  2.  
  3. Back in the mid-1970s, several of the system support staff at Motorola
  4. discovered a relatively simple way to crack system security on the
  5. Xerox CP-V timesharing system.  Through a simple programming strategy,
  6. it was possible for a user program to trick the system into running a
  7. portion of the program in `master mode' (supervisor state), in which
  8. memory protection does not apply.  The program could then poke a large
  9. value into its `privilege level' byte (normally write-protected) and
  10. could then proceed to bypass all levels of security within the
  11. file-management system, patch the system monitor, and do numerous
  12. other interesting things.  In short, the barn door was wide open.
  13.  
  14. Motorola quite properly reported this problem to XEROX via an official
  15. `level 1 SIDR' (a bug report with a perceived urgency of `needs to be
  16. fixed yesterday').  Because the text of each SIDR was entered into a
  17. database that could be viewed by quite a number of people, Motorola
  18. followed the approved procedure: they simply reported the problem as
  19. `Security SIDR', and attached all of the necessary documentation,
  20. ways-to-reproduce, etc. separately.
  21.  
  22. Xerox sat on their thumbs...they either didn't realize the severity of
  23. the problem, or didn't assign the necessary operating-system-staff
  24. resources to develop and distribute an official patch.
  25.  
  26. Months passed.  The Motorola guys pestered their Xerox field-support
  27. rep, to no avail.  Finally they decided to take Direct Action, to
  28. demonstrate to Xerox management just how easily the system could be
  29. cracked, and just how thoroughly the system security systems could be
  30. subverted.
  31.  
  32. They dug around in the operating-system listings, and devised a
  33. thoroughly devilish set of patches.  These patches were then
  34. incorporated into a pair of programs called Robin Hood and Friar Tuck.
  35. Robin Hood and Friar Tuck were designed to run as `ghost jobs'
  36. (daemons, in Unix terminology); they would use the existing loophole
  37. to subvert system security, install the necessary patches, and then
  38. keep an eye on one another's statuses in order to keep the system
  39. operator (in effect, the superuser) from aborting them.
  40.  
  41. So...one day, the system operator on the main CP-V software
  42. development system in El Segundo was surprised by a number of unusual
  43. phenomena.  These included the following:
  44.  
  45.    * Tape drives would rewind and dismount their tapes in the middle of a
  46.      job.
  47.    * Disk drives would seek back and forth so rapidly that they'd attempt
  48.      to walk across the floor (see <walking drives>).
  49.    * The card-punch output device would occasionally start up of itself
  50.      and punch a <lace card> (every hole punched).  These would usually
  51.      jam in the punch.
  52.    * The console would print snide and insulting messages from Robin Hood
  53.      to Friar Tuck, or vice versa.
  54.    * The Xerox card reader had two output stackers;  it could be
  55.      instructed to stack into A, stack into B, or stack into A unless a
  56.      card was unreadable, in which case the bad card was placed into
  57.      stacker B.  One of the patches installed by the ghosts added some
  58.      code to the card-reader driver... after reading a card, it would flip
  59.      over to the opposite stacker.  As a result, card decks would divide
  60.      themselves in half when they were read, leaving the operator to
  61.      recollate them manually.
  62.  
  63. There were some other effects produced, as well.
  64.  
  65. Naturally, the operator called in the operating-system developers.  They
  66. found the bandit ghost jobs running, and X'ed them... and were once
  67. again surprised.  When Robin Hood was X'ed, the following sequence of
  68. events took place:
  69.  
  70.      !X id1
  71.  
  72.      id1:   Friar Tuck... I am under attack!  Pray save me!
  73.      id1: Off (aborted)
  74.  
  75.      id2: Fear not, friend Robin!  I shall rout the Sheriff of 
  76.           Nottingham's men!
  77.  
  78.      id1: Thank you, my good fellow!
  79.  
  80. Each ghost-job would detect the fact that the other had been killed,
  81. and would start a new copy of the recently-slain program within a few
  82. milliseconds.  The only way to kill both ghosts was to kill them
  83. simultaneously (very difficult) or to deliberately crash the system.
  84.  
  85. Finally, the system programmers did the latter... only to find that
  86. the bandits appeared once again when the system rebooted!  It turned
  87. out that these two programs had patched the boot-time image (the
  88. /vmunix file, in Unix terms) and had added themselves to the list of
  89. programs that were to be started at boot time...
  90.  
  91. The Robin Hood and Friar Tuck ghosts were finally eradicated when the
  92. system staff rebooted the system from a clean boot-tape and
  93. reinstalled the monitor.  Not long thereafter, Xerox released a patch
  94. for this problem.
  95.  
  96. It is alleged that Xerox filed a complaint with Motorola's management about
  97. the merry-prankster actions of the two employees in question.  It is
  98. not recorded that any serious disciplinary action was taken against
  99. either of them.
  100.  
  101. [from JARGON FILE, VERSION 2.5.1 29 JAN 1991]